package com.aliyun.messagemgt.entities;

import com.aliyun.messagemgt.common.dto.base.PageQuery;

import java.util.Date;
import java.util.List;

/**
 * Created with IDEA
 *
 * @author:zhangxingxing 0027012120
 * @date:2019/3/16
 * @time:14:20
 */
public class OperateLogEntity extends PageQuery {

    /**
     * 操作记录id
     */
    private Integer operateId;
    /**
     * 操作资源类型
     */
    private Integer operateResourceType;
    /**
     * 操作资源ID
     */
    private Integer operateResourceId;
    /**
     * 操作资源名称
     */
    private String operateResourceName;
    /**
     * 操作状态
     */
    private Integer operateStatus;
    /**
     * 操作类型
     */
    private Integer operateType;
    /**
     * 操作失败信息
     */
    private String failMsg;
    /**
     * 操作人
     */
    private String operateUser;
    /**
     * 操作人姓名
     */
    private String operateUserName;
    /**
     * 部门变号
     */
    private String operateDept;
    /**
     * 部门名称
     */
    private String operateDeptName;
    /**
     * 操作时间
     */
    private Date operateTime;

    /**
     *
     */
    private Integer module;

    //query
    /**
     * 操作日志开始时间
     */
    private String timeStart;

    /**
     * 操作日志结束时间
     */
    private String timeEnd;

    /**
     * 操作用户名称或资源名称
     */
    private String userOrResourceName;

    /**
     * 主键id数组
     */
    private List<String> operateIds;

    /**
     * 升降序
     */
    private String ascOrDesc;


    /**
     * 筛选部门
     */
    private List<String> operateDepts;

    /**
     * 筛选操作类目
     */
    private List<Integer> resourceTypes;

    /**
     * 区分哪个模块 1 - 表示智推 2 -  表示消息中心
     */
    private List<Integer> modules;

    public Integer getOperateId() {
        return operateId;
    }

    public OperateLogEntity setOperateId(Integer operateId) {
        this.operateId = operateId;
        return this;
    }

    public Integer getOperateResourceType() {
        return operateResourceType;
    }

    public OperateLogEntity setOperateResourceType(Integer operateResourceType) {
        this.operateResourceType = operateResourceType;
        return this;
    }

    public Integer getOperateResourceId() {
        return operateResourceId;
    }

    public OperateLogEntity setOperateResourceId(Integer operateResourceId) {
        this.operateResourceId = operateResourceId;
        return this;
    }

    public String getOperateResourceName() {
        return operateResourceName;
    }

    public OperateLogEntity setOperateResourceName(String operateResourceName) {
        this.operateResourceName = operateResourceName;
        return this;
    }

    public Integer getOperateStatus() {
        return operateStatus;
    }

    public OperateLogEntity setOperateStatus(Integer operateStatus) {
        this.operateStatus = operateStatus;
        return this;
    }

    public String getOperateUser() {
        return operateUser;
    }

    public OperateLogEntity setOperateUser(String operateUser) {
        this.operateUser = operateUser;
        return this;
    }

    public String getOperateUserName() {
        return operateUserName;
    }

    public OperateLogEntity setOperateUserName(String operateUserName) {
        this.operateUserName = operateUserName;
        return this;
    }

    public String getOperateDept() {
        return operateDept;
    }

    public OperateLogEntity setOperateDept(String operateDept) {
        this.operateDept = operateDept;
        return this;
    }

    public String getOperateDeptName() {
        return operateDeptName;
    }

    public OperateLogEntity setOperateDeptName(String operateDeptName) {
        this.operateDeptName = operateDeptName;
        return this;
    }

    public Date getOperateTime() {
        return operateTime;
    }

    public OperateLogEntity setOperateTime(Date operateTime) {
        this.operateTime = operateTime;
        return this;
    }

    public String getFailMsg() {
        return failMsg;
    }

    public OperateLogEntity setFailMsg(String failMsg) {
        this.failMsg = failMsg;
        return this;
    }

    public Integer getOperateType() {
        return operateType;
    }

    public OperateLogEntity setOperateType(Integer operateType) {
        this.operateType = operateType;
        return this;
    }

    public Integer getModule() {
        return module;
    }

    public OperateLogEntity setModule(Integer module) {
        this.module = module;
        return this;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("OperateLog{");
        sb.append("operateId=").append(operateId);
        sb.append(", operateResourceType=").append(operateResourceType);
        sb.append(", operateResourceId=").append(operateResourceId);
        sb.append(", operateResourceName='").append(operateResourceName).append('\'');
        sb.append(", operateStatus=").append(operateStatus);
        sb.append(", operateType=").append(operateType);
        sb.append(", failMsg='").append(failMsg).append('\'');
        sb.append(", operateUser='").append(operateUser).append('\'');
        sb.append(", operateUserName='").append(operateUserName).append('\'');
        sb.append(", operateDept='").append(operateDept).append('\'');
        sb.append(", operateDeptName='").append(operateDeptName).append('\'');
        sb.append(", operateTime=").append(operateTime).append('\'');
        sb.append(", module=").append(module);
        sb.append('}');
        return sb.toString();
    }
}
